var fs=require("fs");//引入fs模块
var path=require("path");//引入path模块 nodejs自带的模块
// console.log(path.extname("index.html"));
var url=require("url");//引入 url模块
//获取后缀名私有的方法
function getMime(extname,callback){//得到后缀名的如.html转换成 text/html
    fs.readFile('./mime.json',function (err,data) {
        var Mimes=JSON.parse(data.toString());
        var result=Mimes[extname]||"text/html";
        callback(result);
    });
};
module.exports.statics=function (req,res,staticpath) {//pathname是静态目录的pathname 或者叫staticpath
    var pathname=url.parse(req.url).pathname;//获取url文件的属性pathname 定义为pathname 即得到/index.html
    // console.log(url.parse(req.url));
    // console.log(pathname);
    /*返回/index.html和/favicon.ico  需要过滤掉/favicon.ico*/
    if (pathname=="/"){ /*http://www/baidu.com 不写后面的/ 请求为/ 空的意思 需要过滤掉*/
        pathname="index.html";//默认加载的首页
        // console.log(pathname);
    }
    //获取文件的后缀名
    var extname=path.extname(pathname);//pathname(如index.html) 返回文件的后缀名.html
    if (pathname!="/favicon.ico" ){/*过滤掉/favicon.ico*/
        // console.log(a);//返回值/index.html 只有一个了 这时候就对了
        //文件操作获取static下面的index.html
        fs.readFile(staticpath+"/"+pathname,function (err,data) {
            if (err){/*没有这个文件*/
                fs.readFile(staticpath+"/404.html",function (err,data1) {
                    res.writeHead(404,{"Content-Type":"text/html;charset='utf-8'"});
                    res.write(data1);
                    res.end();/*结束响应*/
                });
                // console.log("404");
            }else {/*返回这个文件*/
              getMime(extname,function (mime) {
                    //发送HTTP头部  http状态值 200:ok  设置htt头部 状态码,200 文件类型html 字符编码UTF-8
                    res.writeHead(200,{"Content-Type":""+mime+";charset='utf-8'"});
                    res.write(data);
                    res.end();/*结束响应*/
                });
            }
        });
    }
};